package com.xindacloud.sms.console.system.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 短信发送记录
 * </p>
 *
 * @author czc
 * @since 2019-10-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel
public class SmsSubmissionRecord implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 短信提交记录ID
	 */
	@TableId(value = "send_record_id", type = IdType.AUTO)
	@ApiModelProperty(value = "短信提交记录ID")
	private Integer sendRecordId;

	/**
	 * 项目ID
	 */
	@ApiModelProperty(value = "项目ID")
	private String projectId;

	/**
	 * 短信费用
	 */
	@ApiModelProperty(value = "短信费用")
	private BigDecimal free;

	/**
	 * 发送时间
	 */
	@ApiModelProperty(value = "发送时间")
	private LocalDateTime submitTime;

	/**
	 * 方向outing
	 */
	@ApiModelProperty(value = "方向outing")
	private String direction;

	/**
	 * 发送者
	 */
	@ApiModelProperty(value = "发送者")
	private String sendFrom;

	/**
	 * 接受者，号码满足E.164格式
	 */
	@ApiModelProperty(value = "接受者，号码满足E.164格式")
	private String sendTo;

	/**
	 * 消息ID（UUID）
	 */
	@ApiModelProperty(value = " 消息ID")
	private String messageId;

	/**
	 * 发送状态
	 */
	@ApiModelProperty(value = "发送状态")
	private Integer submitStatusCode;

	/**
	 * 短信发送编码方式
	 */
	@ApiModelProperty(value = "短信发送编码方式")
	private String encoding;

	/**
	 * 返回消息条数
	 */
	@ApiModelProperty(value = "返回消息条数")
	private Integer messageCount;

	/**
	 * 消息内容
	 */
	@ApiModelProperty(value = "消息内容")
	private String messageBody;

	/**
	 * 网络
	 */
	@ApiModelProperty(value = "网络")
	private String network;

	/**
	 * 代理商ID
	 */
	@ApiModelProperty(value = "代理商ID")
	private String agentId;

	/**
	 * 错误消息
	 */
	@ApiModelProperty(value = "错误消息")
	private String errorText;

}
